export interface HomeFunList {
    bannerAds: string,
    cardAds: Array<Objlist>,
    focusAds: Array<any>,
    icon: Array<iconTypes>,
    metro: Array<iconTypes>,
    navigation: Array<iconTypes>,
    smallIcon: Array<any>,
    themeRecommends: Array<themeRecommendsTpye>
}

interface Objlist {
    aliSappRedirectUrl: any,
    bannerName: any,
    clickAction: number,
    imageUrl: string,
    name: string,
    redirectUrl: string,
    sappRedirectUrl: string,
    umengPoint: string
}

interface iconTypes {
    bgColor: string,
    bizChannel: string,
    btnText: string,
    iconType: number,
    iconUrl: string,
    name: string,
    platform: string,
    redirectUrl: string,
    sort: number,
    subscriptText: string,
    subscriptUrl: string,
    subtitle: string
}

interface themeRecommendsTpye {
    entranceUrl: string,
    name: string,
    nameUrl: string,
    searchType: string,
    type: string
}

export interface RecommendType {
    categoryDetailImgUrl: string
    description: string
    icon: string
    id: number
    name: string
    productList: Array<productListType>
    sort: number
    userCurrency: number
}

export interface productListType {
    currency: number
    id: number
    lockStock: number
    name: string
    pic: string
    price: number
    productScore: number
    productType: number
    promotionPrice: number
    sale: number
    sellLimitForBindAge: any
    sellLimitForCrowdInfo: any
    sellLimitForShopInfo: any
    sellLimitForStudent: any
    sellLimitInfo: any
    showPrice: boolean
    skuDesc: string
    skuId: string
    sort: number
    stock: number
    subTitle: string
}

export interface infoTpye {
    statefulResp: string,
    statelessResps: Array<statelessRespsType>
}

export interface statelessRespsType {
    image: string
    type: number,
}

export interface MeExchangeList {
    currency: number,
    id: number,
    lockStock: number,
    name: string,
    pic: string,
    price: number,
    productScore: number,
    productType: number,
    promotionPrice: number,
    sale: number,
    sellLimitForBindAge: any,
    sellLimitForCrowdInfo: any,
    sellLimitForShopInfo: any,
    sellLimitForStudent: any,
    sellLimitInfo: any,
    showPrice: boolean,
    sort: number,
    stock: number,
    subTitle: string
}

export interface bannerImage {
    bannerImageUrl: string
}

export interface PreferentialListTpye {
    content: Array<contentTpye>,
    totalElements: number,
    totalPages: number
}

interface contentTpye {
    address: string,
    commonCode: string,
    discount: any,
    fullStatus: number,
    greyPrice: any,
    imageList: Array<string>,
    lableList: Array<string>,
    leastMoney: number,
    onlineStatus: number,
    openSeatStatus: any,
    orderOpenStatus: any,
    orderState: number,
    reserveStatus: number,
    serviceState: string,
    shopLat: any,
    shopName: string,
    shopSershopTypeCodeviceStatus: number,
    shopType: string,
    shopTypeCode: number,
    shoplng: any,
    storeState: string,
    targetDistance: number,
}

export interface LoginDataList {
    currentMobile: any,
    existingMobile: any,
    multiLoginId: any,
    newComerPackageUrl: any,
    newMemberTicketStatus: false,
    page: string,
    token: string,
    type: any,
    user: {
        account: {
            storedValueCash: number,
            storedValueGive: number
        },
        aliInfo: object,
        aliRpRecord: any,
        appleInfo: any,
        //头像
        avatar: string,
        birthday: any,
        city: any,
        flags: any,
        memberCardNo: any,
        //手机号
        mobile: string,
        // 用户名
        nickname: string,
        openCardInfo: object,
        province: any,
        qqInfo: any,
        realName: any,
        sex: any,
        //用户id
        userId: string,
        wechatInfo: any
    },
    verifyStatus: any
}

export interface MessageIconList {
    listRecords: Array<listRecordsType>,
    topRecords: Array<listRecordsType>
}

interface listRecordsType {
    icon: string,
    id: number
    lastMsgDate: any
    msgCount: number
    msgDate: string
    msgNotifyType: number
    name: string
    pinOnTop: string
    summary: string
}

export interface searchRelatedType {
    address: string
    bigRegional: any
    city: string
    collectStatus: any
    commonCode: string
    discount: any
    fullStatus: number
    greyPrice: any
    higherLevelOrganization: any
    hotelSpecialActivity: any
    image: string
    lableList: Array<string>
    leastMoney: number
    mobile: any
    onlineStatus: number
    openSeatStatus: any
    orderOpenStatus: any
    orderState: number
    parentOrganization: any
    province: string
    regional: string
    reserveStatus: number
    serviceState: string
    shopLat: string
    shopName: string
    shopServiceStatus: number
    shopType: string
    shopTypeCode: number
    shoplng: string
    storeState: string
    targetDistance: number
    topBottomState: any
}

export interface nameTpye {
    disabled: boolean,
    event: object,
    name: number,
    title: string
}

export interface HotelDetailsType {
    hotelFacilitiesAndServicesList: Array<hotelFacilitiesAndServicesListType>,
    hotelFeaturesList: Array<hotelFacilitiesAndServicesListType>,
    hotelInfoDto: hotelInfoDtoType,
    hotelPrivilegesList: Array<hotelFacilitiesAndServicesListType>,
    hotelSpecialActivity: any,
    otherPoliciesList: Array<hotelFacilitiesAndServicesListType>,
    policiesShowAllFlag: boolean,
    reservationMustReadList: Array<hotelFacilitiesAndServicesListType>,
    serviceShowAllFlag: boolean,
    shopPhotoAlbumList: Array<shopPhotoAlbumListType>
}

interface hotelFacilitiesAndServicesListType {
    commonCode: string
    description: string
    highLight: number
    lableId: number
    lableName: string
    name: any
    parentLableName: string
    roomId: any
    shopLablerelationId: number
    sort: number
    status: number
    type: number
    useScope: any
}

interface hotelInfoDtoType {
    address: string
    checkInTime: string
    checkOutTime: string
    commonCode: string
    memberOutTime: string
    mobile: string
    openTime: string
    picNum: number
    shareImage: string
    shopLat: string
    shopName: string
    shoplng: string
    storeState: number
    sysAutoTime: string
    targetDistance: number
}

interface shopPhotoAlbumListType {
    commonCode: string
    mainImageFlag: any
    photoType: number
    photoUrl: string
    roomId: any
    shopPhotoAlbumId: number
    sort: number
    status: number
    type: number
}

export interface roomListType {
    area: string,
    bedNum: string,
    broadband: string,
    commonCode: string,
    cpu: string,
    listImage:string
    discountList: Array<discountListType>,
    gpu: string,
    hasWindow: string,
    leastMoney: number,
    noSmoking: string,
    orderFlag: number,
    peopleNum: string,
    ram: string,
    roomFlag: number,
    roomId: number,
    roomQuantity: number,
    roomTypeName: string,
    roomTypeWelfareList: Array<discountListType>
    wifi: string,
}

interface discountListType {
    commonCode: string
    description: string
    highLight: number
    lableId: number
    lableName: string
    name: string
    parentLableName: string
    roomId: number
    shopLablerelationId: number
    sort: number
    status: number
    type: number
    useScope: string
}

export interface orderAllType {
    hotelTime: string,
    price: string,
    roomName: string,
    roomType: string,
    listImage: string
}